package aiku.numericalcontroloa.Model.Entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import lombok.Data;

/**
 * 
 * @TableName die_bonus
 */
@TableName(value ="die_bonus")
@Data
public class DieBonus implements Serializable {
    /**
     * 刀模分红id
     */
    @TableId(type = IdType.ASSIGN_UUID)
    private String dieBonusId;

    /**
     * 绘图
     */
    private BigDecimal onePrice;

    /**
     * 切割
     */
    private BigDecimal twoPrice;

    /**
     * 装刀
     */
    private BigDecimal threePrice;

    /**
     * 装线
     */
    private BigDecimal fourPrice;

    /**
     * 打包
     */
    private BigDecimal five;

    /**
     * 额外费用
     */
    private BigDecimal six;

    /**
     * 贴海绵
     */
    private BigDecimal seven;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        DieBonus other = (DieBonus) that;
        return (this.getDieBonusId() == null ? other.getDieBonusId() == null : this.getDieBonusId().equals(other.getDieBonusId()))
            && (this.getOnePrice() == null ? other.getOnePrice() == null : this.getOnePrice().equals(other.getOnePrice()))
            && (this.getTwoPrice() == null ? other.getTwoPrice() == null : this.getTwoPrice().equals(other.getTwoPrice()))
            && (this.getThreePrice() == null ? other.getThreePrice() == null : this.getThreePrice().equals(other.getThreePrice()))
            && (this.getFourPrice() == null ? other.getFourPrice() == null : this.getFourPrice().equals(other.getFourPrice()))
            && (this.getFive() == null ? other.getFive() == null : this.getFive().equals(other.getFive()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getDieBonusId() == null) ? 0 : getDieBonusId().hashCode());
        result = prime * result + ((getOnePrice() == null) ? 0 : getOnePrice().hashCode());
        result = prime * result + ((getTwoPrice() == null) ? 0 : getTwoPrice().hashCode());
        result = prime * result + ((getThreePrice() == null) ? 0 : getThreePrice().hashCode());
        result = prime * result + ((getFourPrice() == null) ? 0 : getFourPrice().hashCode());
        result = prime * result + ((getFive() == null) ? 0 : getFive().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", dieBonusId=").append(dieBonusId);
        sb.append(", onePrice=").append(onePrice);
        sb.append(", twoPrice=").append(twoPrice);
        sb.append(", threePrice=").append(threePrice);
        sb.append(", fourPrice=").append(fourPrice);
        sb.append(", five=").append(five);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}